$(function () {
    var shopId = 1;
    var listUrl = '/o2o/shopadmin/listproductsbyshop?pageIndex=1&pageSize=9999&shopId='
        + shopId;
    var deleteUrl = '/o2o/shopadmin/modifyproduct';

    //从后台获取此店铺的商品列表
    function getList() {
        $.getJSON(listUrl, function (data) {
            if (data.success) {
                var productList = data.productList;
                var tempHtml = '';
                // 遍历每条商品信息，拼接成一行显示，列信息包括
                //商品名称、优先级、上下架(含productId)、编辑按钮(含productId) 预览(含productId)
                productList.map(function (item, index) {
                    var textOp = "下架";
                    var contraryStatus = 0;
                    if (item.enableStatus == 0) {
                        //如果状态值为0，表明是已经下架的商品，操作就变更为上架(既点击上架按钮上架相关商品)
                        textOp = "上架";
                        contraryStatus = 1;
                    } else {
                        contraryStatus = 0;
                    }
                    //拼接每件商品的行信息
                    tempHtml += '' + '<div class="row row-product">'
                        + '<div class="col-30">' + item.productName + '</div>'
                        + '<div class="col-20">' + item.point + '</div>'
                        + '<div class="col-50">'
                        + '<a href="#" class="edit" data-id="' + item.productId + '" data-status="' + item.enableStatus + '">编辑</a>'
                        + '<a href="#" class="delete" data-id="' + item.productId + '" data-status="' + contraryStatus + '">' + textOp + '</a>'
                        + '<a href="#" class="preview" data-id="' + item.productId + '" data-status="' + item.enableStatus + '">预览</a>'
                        + '</div>'
                        + '</div>';
                });
                $('.product-wrap').html(tempHtml);
            }
        });
    }

    getList();
    //修改商品上下架
    function deleteItem(id, enableStatus) {
        var product = {};
        product.productId = id;
        product.enableStatus = enableStatus;
        $.confirm('确定么?', function () {
            $.ajax({
                url: deleteUrl,
                type: 'POST',
                data: {
                    productStr: JSON.stringify(product),
                    statusChange: true
                },
                dataType: 'json',
                success: function (data) {
                    if (data.success) {
                        $.toast('操作成功！');
                        getList();
                    } else {
                        $.toast('操作失败！');
                    }
                }
            });
        });
    }

    // 将class为product-wrap里面的a标签绑定上点击的事件
    $('.product-wrap').on('click', 'a', function (e) {
        var target = $(e.currentTarget);
        if (target.hasClass('edit')) {
            //如果class edit 则点击就进入店铺信息编辑页面，并带有productId
            window.location.href = '/o2o/shopadmin/productoperation?productId='
                + e.currentTarget.dataset.id;
        } else if (target.hasClass('delete')) {
            //如果有class delete则调用后台功能上/下架相关商品，并带有productId
            deleteItem(e.currentTarget.dataset.id, e.currentTarget.dataset.status);
        } else if (target.hasClass('preview')) {
            //如果有class preview则去前台展示系统该商品详情页预览商品情况，并带有productId
            window.location.href = '/o2o/frontend/productdetail?productId='
                + e.currentTarget.dataset.id;
        } else if (target.hasClass('status')) {
            //如果有class status则调用后台功能上/下架相关商品，并带有productId
            changeItemStatus(e.currentTarget.dataset.id,
                e.currentTarget.dataset.status);
        }
    });

    $('#new').click(function () {
        window.location.href = '/o2o/shopadmin/productoperation';
    });

    function changeItemStatus(id, enableStatus) {
        //定义product json对象并添加productId以及状态(上架/下架)
        var product = {};
        product.productId = id;
        product.enableStatus = enableStatus;
        $.confirm('确定么?', function () {
            //上下架相关商品
            $.ajax({
                url: statusUrl,
                type: 'POST',
                data: {
                    productStr: JSON.stringify(product),
                    statusChange: true
                },
                dataType: 'json',
                success: function (data) {
                    if (data.success) {
                        $.toast('操作成功!');
                        getList();
                    } else {
                        $.toast('操作失败!');
                    }
                }
            })
        })
    }
});
